package net.intidee.bean.session.persistenza;

import java.util.List;

import javax.ejb.Stateless;

import net.inteidee.bean.businessinterface.RuoloApplicazioneOperazioneDao;
import net.inteidee.bean.entity.Operazione;
import net.inteidee.bean.entity.RuoloApplicazioneOperazione;
import net.inteidee.bean.entity.Utente;
import net.inteidee.bean.entity.UtenteRuolo;


@Stateless
public class RuoloApplicazioneOperazioneDaoImpl extends GenericDaoImpl<RuoloApplicazioneOperazione> implements RuoloApplicazioneOperazioneDao{

	public RuoloApplicazioneOperazioneDaoImpl() {

		super(RuoloApplicazioneOperazione.class);
	}

	@Override
	public List<RuoloApplicazioneOperazione> findRuoloApplicazioneOperazione(long idRuolo) {
		
		List<RuoloApplicazioneOperazione> list = null;
		
		list = em.createQuery("from RuoloApplicazioneOperazione rao where rao.ruolo.id="+idRuolo +"and rao.applicazione.id=4").getResultList();
		
		return list;
	}

	@Override
	public List<Operazione> getPermissionsFromRoleAndApplication(long idRuolo) {
		// TODO Auto-generated method stub
		
		List<Operazione> permessi  = null;
		
		permessi = em.createQuery("select rao.operazione from RuoloApplicazioneOperazione rao where rao.ruolo.id="+idRuolo).getResultList();
		
		return permessi;
	}
	

//	
//	@Override
//	public boolean canView(int idRuolo) {
//		// TODO Auto-generated method stub
//		
//		List<Operazione> operazioniPossibili = null;
//		
//		operazioniPossibili =   em.createQuery("select rao.operazione from RuoloApplicazioneOperazione rao where rao.ruolo.id="+idRuolo).getResultList();
//		
//		for(Operazione operazione : operazioniPossibili)
//			if(operazione.getNome().equals("Gestione Utenti"))
//				return true;
//		
//		return false;
//	}
	
	

}
